{{tag>dépôts }}

====== Régler l'erreur GPG "NO_PUBKEY" ======

===== Méthode =====


Lorsque vous ajoutez des dépôts à votre distribution afin de bénéficier de version supérieure de certains logiciels, vous vous trouvez surement souvent confronté à un message d'erreur du genre :


<note warning>W: GPG error: http://ppa.launchpad.net jaunty Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY votre_n°_de_clé</note>

Pour pallier à ce problème il vous suffit de faire :

<code>sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com votre_n°_de_clé</code>
ou bien :
<code>sudo apt-get install add-apt-key && sudo add-apt-key votre_n°_de_clé</code>

Si le port hkp (11371/tcp) est filtré (par exemple au travail), passer en http :

<code>sudo add-apt-key -k http://keys.gnupg.net votre_n°_de_clé</code>
ou bien :
<code>wget -O- "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xvotre_n°_de_clé" | sudo apt-key add -</code>


<note help>Si ça ne marche pas utilisez les deux lignes suivantes en remplaçant votre_n°_de_clé par le n° indiqué dans le message d'erreur :</note>

<code>gpg --keyserver keyserver.ubuntu.com --recv-key  votre_n°_de_clé
gpg -a --export votre_n°_de_clé | sudo apt-key add -</code>


Plus simplement, vous pouvez aussi vous créer un petit script que vous appellerez pour ajouter vos clés :
dans votre terminal, tapez :
<code>
gedit apt-gpg-key
</code>

puis, dans gedit, copiez le code suivant :
<code>
#!/bin/bash

gpg --keyserver keyserver.ubuntu.com --recv-keys $1
gpg --armor --export $1 | sudo apt-key add -
</code>

Enregistrez le fichier puis de nouveau dans votre terminal, rendez-le exécutable en faisant :
<code>
chmod +x apt-gpg-key
</code>
Enfin, lancez le programme en tapant :
<code>
sudo ./apt-gpg-key votre_n°_de_clé
</code>

Si vous obtenez une erreur du type :
<code>
gpg: AVERTISSEMENT: le propriétaire du répertoire contenant est peu
sûr pour le fichier de configuration `/home/votre-nom-utilisateur/.gnupg/gpg.conf'
gpg: les appels aux programmes externes sont désactivés car les permissions
du fichier d'options sont trop peu sûres
gpg: erreur de communication avec le serveur de clés: erreur générale
gpg: la réception depuis le serveur de clés a échoué: erreur générale
gpg: AVERTISSEMENT: le propriétaire du répertoire contenant est peu
sûr pour le fichier de configuration `/home/votre-nom-utilisateur/.gnupg/gpg.conf'
OK
</code>

Exécutez simplement :
<code>
sudo chown root:root .gnupg/
sudo chown -R root:root .gnupg/
</code>

------
Contributeurs : [[utilisateurs:Daëavelwyn]], [[utilisateurs:Mysteroid]]